package cn.hh.ymcc.service;

import cn.hh.ymcc.domain.Course;
import cn.hh.ymcc.dto.CourseDto;
import cn.hh.ymcc.result.JSONResult;
import com.baomidou.mybatisplus.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author huang.hao
 * @since 2025-04-24
 */
public interface ICourseService extends IService<Course> {

    /**
     *   新增课程
     * @param dto
     */
    void save(CourseDto dto);

    /**
     * 课程上架
     * @param courseId
     */
    void onLineCourse(Long courseId);

    /**
     *  课程下架
     * @param courseId
     */
    void offLineCourse(Long courseId);

    /**
     *  查询课程详细
      */
    JSONResult getDetail(Long courseId);

    /**
     *  获取视频播放
     * @param mediaId
     * @return
     */
    String getForUser(Long mediaId);

    /**
     *  获取订单信息
     *  确认订单页需要把课程数据回显
     * @param courseIds
     * @return
     */
    JSONResult info(String courseIds);


    /**
     *  后端调用
     * @param courseIds
     * @return
     */
    JSONResult rpcInfo(String courseIds);

    /**
     * 查询秒杀订单结算页详细
     * @param orderNo
     * @return
     */
    JSONResult oneByOrder(String orderNo);
}
